#ifndef __CIRCLE_H__
#define __CIRCLE_H__

#include "../Global.h"
#include "../OrbitSystem/OrbitSystem.h"
#include "CircleSegment.h"

#include "CircleDefine.h"

class OrbitSystem;
class CircleSegment;

class Circle : public CCNode
{
public:
	Circle( );
	virtual ~Circle();

	virtual bool	init					( ); 
	
	void			addSegment				( CircleSegment* pSegment , float angle = 0 );
	void			removeSegment			( CircleSegment* pSegment );
	void			removeLastSegment		( );

	void			setRadius				( float radius );

	inline
	float			getRadius				( )
	{
		return m_fRadius;
	}

	
	void			rotate					( );

	CREATE_SET_GET( CCSpriteBatchNode* , m_pBatchNode , BatchNode );
	CREATE_SET_GET( float , m_fSpeed , Speed );
private:
	CCArray*			m_pListSegment;
	float				m_fRadius;
};


#endif